home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 110 / EnigmaAmiga110CD.iso / dalla rivista / host contacted / wbstartup+.lha / WBStartup+ / Source / WBStartup+Prefs / WBStartup+Prefs.h < prev    next >
C/C++ Source or Header  |  1998-10-26  |  3KB  |  81 lines

  1. /* Prototypes for functions defined in
  2. WBStartup+Prefs.c
  3.  */
  4.  
  5. #include <dos/dos.h>  /* BPTR */
  6.  
  7. extern enum GadgetIDs {SAVE_GAD=0,CANCEL_GAD,LIST_GAD,TOTALGADGETS};
  8. extern enum MenuIDs {SAVE_MENU=0,ABOUT_MENU,QUIT_MENU,RESTORE_MENU,PROGRAMINFO_MENU,SORTALPHABETICALLY_MENU,SORTPRIORITY_MENU, SELECTALL_MENU, SELECTNONE_MENU, SELECTTOGGLE_MENU, SELECTGROUP_MENU,
  9.               CREATEGROUP_MENU,DELETEGROUP_MENU,MODIFYGROUP_MENU};
  10.  
  11. struct WBStartupPrefs
  12. {
  13.   char ExecutePath[200];
  14.   char StoragePath[200];
  15.   BOOL Alphabetize;
  16.   APTR filenamePool;               /* Memory Pool for filenames */
  17.   APTR groupPool;                  /* Memory Pool for groups */
  18.   BPTR EnabledDirLock;             /* A Lock on the enabled directory */
  19.   BPTR DisabledDirLock;            /* A Lock on the disabled directory */
  20.   ULONG NumPrograms;               /* The # of programs in the list */
  21. };
  22.  
  23.  
  24. struct GadgetData
  25. {
  26.   struct Gadget *gadgets[TOTALGADGETS];
  27.   struct Image  *upimage;
  28.   struct Image  *downimage;
  29.   struct Object *stringframe;
  30. };
  31.  
  32. struct WBSPNode   /* Workbench Startup Prefs Node */
  33. {
  34.   struct Node wbsp_node;
  35.   UBYTE Original_Type;
  36.   int Original_Priority;  /* no greater than BYTE */
  37. };
  38.  
  39. struct GroupNode
  40. {
  41.   struct Node group_node;
  42.   struct List enabled;
  43. };
  44.  
  45. extern struct Node *FirstSelectedNode;
  46. extern char const version[100];
  47. extern ULONG PRIORITYEDGE;
  48. extern struct IntuitionBase * IntuitionBase;
  49. extern struct Library * GadToolsBase;
  50. extern struct Library * CxBase;
  51. extern struct Library * IconBase;
  52. extern struct Library * ScreenNotifyBase;
  53. extern struct Library * WorkbenchBase;
  54. extern struct Library * DiskfontBase;
  55. extern struct GfxBase * GfxBase;
  56. extern struct Library * UtilityBase;
  57. extern struct Hook CBLVHook;
  58.  
  59. int main(int , char ** );
  60. void GetFilenames(struct List *filenamequeue, APTR memPool, char *directory, UBYTE type, struct WBStartupPrefs *prefs);
  61. struct WBSPNode *AddFileToList(struct List *filenamequeue, APTR memPool, char *pathname, UBYTE type, struct WBStartupPrefs *prefs);
  62. void GetArguments(int , char ** , struct WBStartupPrefs * );
  63. void ProcessEvents(struct List * , struct List * , struct WBStartupPrefs *, APTR );
  64. BOOL RenderGadgets(struct Gadget ** , void * , struct Window * , struct Gadget ** , struct List * , struct Gadget * (* )(struct Gadget ** , void * , struct Window * , struct Gadget ** , struct List * ));
  65. void ShowRequester(STRPTR );
  66. struct Gadget * createAllGadgets(struct Gadget ** , void * , struct Window * , struct Gadget ** , struct List * );
  67. void RestoreTypes(struct List * );
  68. void SaveChanges(struct List * , struct WBStartupPrefs * );
  69. BOOL ChangePriTooltype(char * , BYTE );
  70. void ShowWBIconRequester(struct WBSPNode * , struct WBStartupPrefs * , struct Screen * );
  71. void AlphabetizeList(struct List * );
  72. ULONG GetScreenHeight(struct Screen * );
  73. ULONG BestWindowHeight(struct Screen * , struct List * );
  74. ULONG ListViewHeight(struct Screen *scr, struct List *list);
  75. void SortPriorityList(struct List * );
  76. void SaveGroups(struct List * );
  77. void ReadGroups(struct List *, APTR memPool);
  78. void CreateGroup(struct List *grouplist, struct List *wbsplist, char *groupname, APTR memPool);
  79. void SelectGroup(struct List * , struct List * );
  80. void DeleteGroup(struct GroupNode *, APTR );
  81.